package com.ibm.cloud.banking.facade.media;


import com.ibm.cloud.banking.facade.account.dto.AccountInfoDTO;
import com.ibm.cloud.banking.facade.media.dto.MediaCardDTO;

public interface IMediaCardFacade<T> {

     String DOMAIN="media";

    String getAccountNoByCardNo(T data);

     MediaCardDTO allocateMediaCard(MediaCardDTO mediaCardDTO);

    /**
     * 根据卡号获取介质卡信息
     * @param cardNo 账户卡号
     * @return 介质卡信息
     */
    MediaCardDTO getMediaCardByCardNo(String cardNo);


    MediaCardDTO checkMediaCardStatus(String cardNo);


    int checkMediaCardWithdrawalPassword(String cardNo,String password);


    int checkMediaCardWithdrawalPassword(MediaCardDTO mediaCardDTO);

    void allocateMediaCardRefund(MediaCardDTO mediaCardDTO);
}
